const joi = require('joi')

// 用户名的验证规则
const username = joi.string().alphanum().min(1).max(10).required()
// 用户密码的验证规则
const password = joi.string().pattern(/^\S{6,12}$/).required()
// 用户昵称
const nickname = joi.string().required()
// 邮箱
const email =  joi.string().email().required()
// 头像
const user_pic = joi.string().dataUri().required()

// 注册
exports.reg_register = {
  // body query params
  body: {
    username, password
  }
}
// 更新用户信息
exports.reg_updateUserInfo = {
  body: {
    nickname, email, user_pic
  }
}
// 修改密码
exports.reg_modifyPassword = {
  body: {
    oldPsw: password,
    // 1. joi.ref('oldPwd') 表示 newPwd 的值必须和 oldPwd 的值保持一致
    // 2. joi.not(joi.ref('oldPwd')) 表示 newPwd 的值不能等于 oldPwd 的值
    // 3. .concat() 用于合并 joi.not(joi.ref('oldPwd')) 和 password 这两条验证规则
    newPsw: joi.not(joi.ref('oldPsw')).concat(password),
  }
}
// 更新头像
exports.reg_updateAvatar = {
  body: {
    user_pic,
  }
}
